package com.cfs.dao.sys;

import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;

import org.springframework.dao.DuplicateKeyException;
import org.springframework.jdbc.core.RowMapper;

import com.cfs.po.Exp;
import com.cfs.po.sys.Menu;
import com.cfs.po.sys.Right;

/**
 * 用户管理dao
 * 
 * @author SDZJ
 * 
 */
public interface MenuDao{

	/**
	 * 添加用户菜单
	 * 
	 * @param users
	 * @return
	 */
	public Menu add(Menu m);

	public Menu queryById(Long id);

	public Menu queryByName(String name);

	/**
	 * 据角色 ID 查菜单列表 
	 * 
	 * @param rid
	 * @return
	 */
	public List<Menu> queryByRoleId(Long rid);

	/**
	 * 查询菜单权限
	 * 
	 * @param mid
	 * @return
	 */
	public List<Right> queryRightsById(Long mid); 

	/**
	 * 
	 * 删除菜单
	 * 
	 * @param ids
	 * @return
	 */
	public int deleteById(Long[] ids);

	/**
	 * 更新菜单
	 * 
	 * @param menu
	 * @return
	 */
	public Menu updateMenu(Menu menu);

	/**
	 * 更新菜单权限列表
	 * 
	 * @param mid
	 * @param rl
	 * @return
	 */
	public int updateMenuRights(Long mid, List<Right> rl);

	/**
	 * 更新角色菜单
	 * 
	 * @param rid
	 * @param mids
	 * @return
	 */
	public int updateRoleMenus(Long rid, Long[] mids);

}
